#ifndef FIFO_H
#define FIFO_H

#ifdef __cplusplus
extern "C"
{
#endif

#include "main.h"
#include <stdint.h>

//----Uart Fifo-----
void Fifo_Init_uart(void *buf, int size);
bool Fifo_putch_uart(uint8_t ch);
bool Fifo_getch_uart(uint8_t *ch);
int Fifo_read_uart(void *buf, int max_len);
bool Fifo_write_uart(const void *buf, int size);
int Fifo_length_uart(void);
int Fifo_size_uart(void);
int Fifo_free_length_uart(void);
void Fifo_flush_uart(void);

#ifdef __cplusplus
}
#endif

#endif
